import PeonyClient from "./peony_client";

const messageGroupType = {
  Small: "small",
  Medium: "medium",
  Large: "large",
};
//全局
let roomUserId = "";
let ownerId = "";
let userId = "";
// 登录成功后 才能建立连接
let isInit = false;
const getwebsocket = async (socketUrl, params) => {
  console.log("init 之前", isInit);

  if (isInit) {
    return false;
  }
  isInit = true;
  PeonyClient.init(socketUrl, params);
  console.log("init PeonyClient");
  userId = params.userId;

  // 设计一个订阅模式  多个监听
  // 单一消息监听 区分个人消息还是系统消息
  PeonyClient.onSocketMessage(function (msg) {
    // 监听服务器返回的消息，并放在数组里面
    // console.log('收到 msg：', msg)

    if (msg.type == "message") {
      //普通消息
    }
  });

  //  群的消息监听  消息接收
  PeonyClient.onSocketMessageGroup(function (msg) {
    // console.log('收到群 msg：', msg)
    if (msg) {
    }
  });

  //  群的消息监听  进群申请消息
  PeonyClient.onSocketJoinGroupToAdmin(function (msg) {
    // console.log('收到有人进群 msg：', msg)
    if (msg) {
    }
  });

  //  群的消息监听  邀请进群消息
  PeonyClient.onSocketInvitedGroupGroupToUser(function (msg) {
    // console.log('收到邀请进群', msg)
    if (msg) {
    }
  });

};

const onSocketGroupNotify = (callback) => {
  PeonyClient.onSocketGroupNotify(
    function (msg) {
      // console.log('收到群通知1 msg：', msg)
      if (msg) {
        callback(msg);
      }
    },
    (err) => {
      if (err) {
        callback(err);
      }
    }
  );
};

const onConnectSuccess = (callback) => {
  PeonyClient.onConnectSuccess(function (msg) {
    // console.log('收到群通知1 msg：', msg)
    if (msg) {
      callback(msg);
    }
  });
};
export default {
  getwebsocket,
  onSocketGroupNotify,
  onConnectSuccess,
};
